<template>
    <div class="pl-[10px] pr-[10px]">
        <v-list v-model:selected="currentSelected" v-model:opened="currentOpened" open-strategy="multiple" @click:select="handleSelect">
            <!-- <menuItem v-for="item in bussiness_routes" :key="item.path" :menuData="item">
            </menuItem> -->
        </v-list>
    </div>
</template>

<script lang="ts" setup>
// import { ref, watch, onUnmounted, nextTick } from 'vue';
// import menuItem from './components/menuItem.vue';

// import { useCurrentInstance } from "@Hooks/index.ts";
// const proxy = useCurrentInstance().proxy;

// // 读取当前路由表
// let bussiness_routes = proxy.$router.options.routes.filter(item => { return item.path == '/' });
// bussiness_routes = bussiness_routes[0].children;

// // 当前选中的项
// const currentSelected = ref([]);

// // 当前打开的组
// const currentOpened = ref([]);

// // 构造fullPath作为id值
// function setFullPath(item: any, fatherPath = "") {
//     let fullPath = fatherPath + (item.path.startsWith("/") ? item.path : "/" + item.path);
//     if (item.children && item.children.length) {
//         for (let it of item.children) {
//             setFullPath(it, fullPath);
//         }
//     }
//     item.fullPath = fullPath;
// }
// for (let item of bussiness_routes) {
//     setFullPath(item);
// }

// // 监听路由变化
// watch(() => proxy.$route, (val) => {
//     if (currentSelected.value.indexOf(val.fullPath) == -1 || currentOpened.value.length > 1) {
//         // 自动选中
//         currentSelected.value = [val.fullPath];
//         // 自动展开
//         let arr = [];
//         for (let item of val.matched) {
//             if (item.path != "/" && item.children && item.children.length && currentOpened.value.indexOf(item.path) == -1) {
//                 arr.push(item.path);
//             }
//         }
//         currentOpened.value = currentOpened.value.concat(arr);
//         // 自动滚动到指定位置
//         nextTick(() => {
//             autoScrollAppMenu(currentSelected.value[0]);
//         })
//     }
// }, {
//     immediate: true
// });

// // 点击菜单
// function handleSelect(item: any) {
//     // 路由跳转
//     proxy.$router.push(item.id);
// }

// // 滚动联动
// import { useGoTo } from 'vuetify';
// const goTo = useGoTo();
// var scrollTimer: any = null;
// // 右侧内容滚动到对应的位置
// function autoScrollAppMenu(id: string) {
//     if (scrollTimer) {
//         return;
//     }
//     goTo("#" + id.replace(/\//g, '_'), {
//         offset: -76, // 偏移值
//         container: "#appNavigationDrawer"
//     })
//     scrollTimer = setTimeout(() => {
//         clearTimeout(scrollTimer);
//         scrollTimer = null;
//     }, 10)
// }
// onUnmounted(() => {
//     clearTimeout(scrollTimer);
//     scrollTimer = null;
// })
</script>

<style scoped></style>
